第 1 步 - 使用键盘键在页面 (Page) 节点之间导航

在本教程的这一步骤中,您将学习创建键盘导航,在HomeMediaCarNavigation 应用程序屏幕之间导航。您设置焦点在导航栏上的按钮上切换,并设置应用程序当用户按下 (右箭头)和 (左箭头)键盘键时在应用程序屏幕之间导航。

教程资产

本教程的起点资料是存储在 <KanziWorkspace>/Tutorials/Keyboard input/Start 目录中的 Keyboard input.kzproj Kanzi Studio 工程文件。

<KanziWorkspace>/Tutorials/Keyboard input/Completed 目录包含本教程已完成的工程。

起点工程包含完成本教程所需的内容:

创建应用程序屏幕之间的键盘导航

在本节中,您将学习创建切换按钮的键盘导航,用于在显示应用程序屏幕的 页面 (Page) 节点之间导航。

要创建应用程序屏幕之间的键盘导航:

  1. 工程 (Project) 中选择屏幕 (Screen) 节点,在节点组件 (Node Components) > 触发器 (Triggers) 部分右键点击并选择添加触发器 (Add Trigger) > 常规 (General) > 附加时 (On Attached)
    当您启动应用程序,Kanzi 将焦点默认设置到 屏幕 (Screen) 节点。您可以使用 附加时 (On Attached) 触发器在您启动应用程序时将焦点设为导航栏。
  2. 节点组件 (Node Components) 中向附加时 (On Attached) 触发器添加设置焦点 (Set Focus) 动作,并在设置焦点 (Set Focus) 窗口中将目标项 (Target Item) 设置为 #NavigationButtons
    当应用程序启动时将焦点设置为 2D 切换按钮组 (Toggle Button Group 2D) 节点NavigationButtons,以允许用户在焦点链中移动焦点。在本节的下一步中,您将设置 NavigationButtons 节点让焦点前进到 HomeButton 节点,以在应用程序屏幕之间创建导航。
  3. 建议

    您可以使用别名或指向每个节点的路径定义焦点链。
    别名提供设置焦点链中节点的便捷方式。请参阅使用别名

  4. 工程 (Project) > RootPage 中选择 NavigationButtons 节点,在属性 (Properties) 中右键点击,选择添加属性 (Add Property) > Focus Manager (焦点管理器) > 焦点范围 (Focus Scope) 属性并启用该属性。
    您使用焦点范围 (Focus Scope) 属性让焦点从 NavigationButtons 节点前进到 HomeButton 节点,以在应用程序屏幕之间导航。这样用户可以使用键盘键在这些切换按钮之间导航。
  5. 工程 (Project) > RootPage > NavigationButtons > 2D 网格布局 (Grid layout 2D) 中选择 HomeButton 节点,在属性 (Properties) 中右键点击,选择添加属性 (Add Property) > 节点 (Node) > 逻辑焦点 (Logical Focus) 属性并启用该属性。
    当设置焦点到焦点范围节点时,启用逻辑焦点 (Logical Focus) 属性的子节点接收焦点。如果焦点范围有多个启用逻辑焦点 (Logical Focus) 属性的子节点,焦点管理器将焦点设置到最后一个子节点。
    您设置 HomeButton 节点在将焦点设置到 2D 切换按钮组 (Toggle Button Group 2D) 节点 NavigationButtons 时接收焦点。
  6. 工程 (Project) > RootPage > NavigationButtons > 2D 网格布局 (Grid layout 2D) 中选择 HomeButton 节点,在属性 (Properties) 中右键点击,选择添加属性 (Add Property) > Focus Manager (焦点管理器) > 向右导航节点 (Right Navigation Node),将其设为 #MediaButton
    Kanzi 中的焦点链使您可以根据节点渲染位置使用 (左箭头)、(右箭头)、(上箭头)和(下箭头)键在节点之间导航。您使用向右导航节点 (Right Navigation Node) 属性设置当用户按下键盘上的 (右箭头)键时焦点从 HomeButton 节点移动到 MediaButton 节点。

  7. MediaButtonCarButton 节点重复上一步,但在 属性 (Properties) 中设置 向右导航节点 (Right Navigation Node) 属性:
  8. 工程 (Project) > RootPage > NavigationButtons > 2D 网格布局 (Grid layout 2D) 中选择 MediaButton 节点,在 属性 (Properties) 中添加右键点击,选择 添加属性 (Add Property) > Focus Manager (焦点管理器) > 向左导航节点 (Left Navigation Node),将其设为 #HomeButton
    您使用 向左导航节点 (Left Navigation Node) 属性设置当用户按下键盘上的 (左箭头)键时焦点从 MediaButton 节点移动到 HomeButton 节点。
  9. CarButtonNavigationButton 节点重复上一步,但在 属性 (Properties) 中设置 向左导航节点 (Left Navigation Node) 属性:

重启 预览 (Preview),将初始焦点设置到 HomeButton 切换按钮。现在您可以使用 (右箭头)和 (左箭头)键盘键在应用程序屏幕之间导航。


< 简介
下一步 >

另请参阅

要详细了解焦点在 Kanzi 中的工作原理,请参阅焦点

要详细了解有关页面 (Page)主页面 (Page Host) 节点的信息,请参阅使用页面 (Page) 和主页面 (Page Host) 节点

要详细了解有关使用触发器的信息,请参阅使用触发器